package sun.superstring.demo;

import java.util.Random;
import java.util.Scanner;

public class GuessValueTest2 {
    public static void main(String[] args) {
        // 目标：猜数游戏（1-100之间）
        guess();
    }
    public static void guess() {
        // 1.生成一个随机数:1-100之间
        /**
         * Math.random()：是Java中的内置功能（内置方法），它返回一个 [0,1) 之间的随机小数
         * (int)(Math.random() * 100)：是返回一个 [0,100) 之间的整数  =====> [0,100) 的整数
         *                                                       =====> [0,99] 的整数
         * (int)(Math.random() * 100) + 1：是返回一个 [1,100] 之间的整数
         */
//        int number = (int)(Math.random() * 100) + 1;
//        System.out.println("number = " + number);

        // 得到一个随机数对象
        Random r = new Random();
        // r.nextInt(100)：生成一个 [0,100) 之间的整数，含0，不含100，包前不包后。
        int number = r.nextInt(100) + 1;  // [0,100) + 1 =======>  [1,100] 之间的整数

        // 2.定义一个死循环让用户一直猜，知道猜中猜结束循环。
        Scanner sc = new Scanner(System.in);

        System.out.println("猜数游戏开始！");
        while (true) {
            System.out.println("请输入一个数字：");
            int guessNumber = sc.nextInt();

            // 3.判断用户输入的数字是否和随机数相等
            if (guessNumber == number) {
                System.out.println("恭喜你，猜对了！");
                break;
            } else if (guessNumber > number) {
                System.out.println("猜大了！");
            } else {
                System.out.println("猜小了！");
            }
        }

    }
}
